<?xml version="1.0" ?>
<!--
  Schema definition for Ribbon Extensibility

  Copyright (c) Microsoft Corporation. All rights reserved.
-->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
						version="1.0" 
						targetNamespace="http://schemas.microsoft.com/office/2006/01/customui"
						xmlns="http://schemas.microsoft.com/office/2006/01/customui"
						elementFormDefault="qualified"
						attributeFormDefault="unqualified"
>
	<xsd:annotation>
		<xsd:documentation>
			----------------------------------------------------------------------
			Schema definition for Ribbon Extensibility
			----------------------------------------------------------------------
		</xsd:documentation>
	</xsd:annotation>

	<xsd:annotation>
		<xsd:documentation>
			----------------------------------------------------------------------
			Attribute types
			----------------------------------------------------------------------
		</xsd:documentation>
	</xsd:annotation>

	<xsd:simpleType name="ST_QID">
		<xsd:annotation>
			<xsd:documentation>

				The qualified ID of a control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:QName">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="1024"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_ID">
		<xsd:annotation>
			<xsd:documentation>

				The custom ID of a control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:NCName">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="1024"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_UniqueID">
		<xsd:annotation>
			<xsd:documentation>

				A unique ID.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:ID">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="1024"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_Delegate">
		<xsd:annotation>
			<xsd:documentation>

				A callback. Callbacks are used to provide status, update properties or perform actions.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="1024"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_StringLength">
		<xsd:annotation>
			<xsd:documentation>

				A numeric argument for maximum string length in controls.
				String length is limited to 1024 characters.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:minInclusive value="1"/>
			<xsd:maxInclusive value="1024"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_GalleryRowColumnCount">
		<xsd:annotation>
			<xsd:documentation>

				A numeric argument for the maximum number of rows or columns in galleries.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:minInclusive value="1"/>
			<xsd:maxInclusive value="1024"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_GalleryItemWidthHeight">
		<xsd:annotation>
			<xsd:documentation>

				A numeric argument for the maximum width or height of a gallery item.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:minInclusive value="1"/>
			<xsd:maxInclusive value="4096"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_String">
		<xsd:annotation>
			<xsd:documentation>

				A string argument.
				String length is limited to 1024 characters.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="1024"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_LongString">
		<xsd:annotation>
			<xsd:documentation>

				A long string argument.
				String length is limited to 4096 characters.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="4096"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_Uri">
		<xsd:annotation>
			<xsd:documentation>

				A string argument for a path to a file or a resource.
				String length is limited to 1024 characters.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="1024"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_Size">
		<xsd:annotation>
			<xsd:documentation>

				The size of a button. Values are "normal" or "large."

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="normal"/>
			<xsd:enumeration value="large"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_ItemSize">
		<xsd:annotation>
			<xsd:documentation>

				The size of items in a menu. Values are "normal" or "large."

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="normal"/>
			<xsd:enumeration value="large"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_BoxStyle">
		<xsd:annotation>
			<xsd:documentation>

				A box control. Values are "horizontal" or "vertical."

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="horizontal"/>
			<xsd:enumeration value="vertical"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ST_Keytip">
		<xsd:annotation>
			<xsd:documentation>

				A keytip. Value is 1-3 alphanumeric characters.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:token">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="3"/>
			<xsd:whiteSpace value="collapse"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:annotation>
		<xsd:documentation>
			----------------------------------------------------------------------
			Attributes
			----------------------------------------------------------------------
		</xsd:documentation>
	</xsd:annotation>

	<xsd:attributeGroup name="AG_IDCustom">
		<xsd:annotation>
			<xsd:documentation>

				Attributes for a custom control ID.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="id"
									 type="ST_UniqueID"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The ID of a custom UI element. IDs must be unique.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="idQ"
									 type="ST_QID"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>

					A qualified control ID.  Qualified IDs allow different add-ins to modify the same custom group, tab, or menu.

				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_IDMso">
		<xsd:annotation>
			<xsd:documentation>

				The ID of a built-in control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="idMso"
									 type="ST_ID"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The ID of a built-in control.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_Tag">
		<xsd:annotation>
			<xsd:documentation>

				Custom data.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="tag"
									 type="ST_String"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Custom data.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>


	<xsd:attributeGroup name="AG_Title">
		<xsd:annotation>
			<xsd:documentation>

				The title of a menu.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="title"
									 type="ST_String"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The title of a menu.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getTitle"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for the title of a menu.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_IDAttributes">
		<xsd:annotation>
			<xsd:documentation>

				Attributes that specify control ID.
				One of id, idMso, or idQ must be specified to identify a control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attributeGroup ref="AG_IDCustom"/>
		<xsd:attributeGroup ref="AG_IDMso"/>
		<xsd:attributeGroup ref="AG_Tag"/>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_Image">
		<xsd:annotation>
			<xsd:documentation>

				The image or icon of a control.
				Image attributes are mutually exclusive - only one of
				"image", "imageMso", or "getImage" may be specified.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="image"
									 type="ST_Uri"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					A custom image or icon.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="imageMso"
									 type="ST_ID"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The image of a built-in control.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getImage"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for a custom image.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_CommonAttributes">
		<xsd:annotation>
			<xsd:documentation>

				Attributes that can be applied to all commands and controls.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attributeGroup ref="AG_Enabled"/>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_PositionAttributes">
		<xsd:annotation>
			<xsd:documentation>

				Attributes that set the position of an object relative to its siblings,
				such as the position of a control within a group or position of a tab relative to other tabs.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="insertAfterMso"
									 type="ST_ID"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The ID of built-in control to be inserted after.
					Mutually exclusive with InsertBeforeMso, InsertAfterQ, InsertBeforeQ.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="insertBeforeMso"
									 type="ST_ID"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The ID of built-in control to be inserted before.
					Mutually exclusive with InsertAfterMso, InsertAfterQ, InsertBeforeQ.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="insertAfterQ"
									 type="ST_QID"
									 use="optional" >
			<xsd:annotation>
				<xsd:documentation>
					The ID of control to be inserted after.
					Mutually exclusive with InsertAfterMso, InsertBeforeMso, InsertBeforeQ.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="insertBeforeQ"
									 type="ST_QID"
									 use="optional" >
			<xsd:annotation>
				<xsd:documentation>
					The ID of control to be inserted before.
					Mutually exclusive with InsertAfterMso, InsertBeforeMso, InsertAfterQ.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_Enabled">
		<xsd:annotation>
			<xsd:documentation>

				Attributes for a control's enabled state.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="enabled"
									 type="xsd:boolean"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Whether the control is enabled.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getEnabled"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback that returns true if the control is enabled.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_Visible">
		<xsd:annotation>
			<xsd:documentation>

				Attributes for a control's visibility.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="visible"
									 type="xsd:boolean"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Whether the control is visible.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getVisible"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback that returns true if the control is visible.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_Label">
		<xsd:annotation>
			<xsd:documentation>

				Attributes that set a control's label.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="label"
									 type="ST_String"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Sets the label.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getLabel"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback that sets the label.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_Keytip">
		<xsd:annotation>
			<xsd:documentation>

				Attributes to set a control's keytip.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="keytip"
									 type="ST_Keytip"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Sets the keytip.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getKeytip"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback that sets the keytip.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_Screentip">
		<xsd:annotation>
			<xsd:documentation>

				Attributes for a control's screentip.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="screentip"
									 type="ST_String"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Sets the screentip, which appears on mouse hover.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getScreentip"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback that sets the screentip.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="supertip"
									 type="ST_String"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Sets the supertip, a large screentip.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getSupertip"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback that sets the supertip, a large screentip.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_Description">
		<xsd:annotation>
			<xsd:documentation>

				Attributes for the extended description of a control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="description"
									 type="ST_LongString"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Sets the extended description of the control, which appears in menus with itemSize set to large.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getDescription"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback that sets the description.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_UIAttributes">
		<xsd:annotation>
			<xsd:documentation>

				Attributes that can be applied to all controls.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attributeGroup ref="AG_CommonAttributes"/>
		<xsd:attributeGroup ref="AG_Label"/>
		<xsd:attributeGroup ref="AG_PositionAttributes"/>
		<xsd:attributeGroup ref="AG_Visible"/>
		<xsd:attributeGroup ref="AG_Keytip"/>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_ItemAttributes">
		<xsd:annotation>
			<xsd:documentation>

				Common attributes that can be applied to controls and groups.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attributeGroup ref="AG_Image"/>
		<xsd:attributeGroup ref="AG_Screentip"/>
		<xsd:attributeGroup ref="AG_UIAttributes"/>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_ControlAttributes">
		<xsd:annotation>
			<xsd:documentation>

				Attributes applied to controls.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attributeGroup ref="AG_ItemAttributes"/>
		<xsd:attribute name="showLabel"
									 type="xsd:boolean"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Whether to show a control's label.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getShowLabel"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for whether to show a control's label.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="showImage"
									 type="xsd:boolean"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Whether to show a control's image.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getShowImage"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for whether to show a control's image.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_Action">
		<xsd:annotation>
			<xsd:documentation>

				Callback fired on user action.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="onAction"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback fired on user action (for example, a button press).
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_SizeAttributes">
		<xsd:annotation>
			<xsd:documentation>

				A size attribute.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="size"
									 type="ST_Size"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The size of a control.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getSize"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for a control's size.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_DropDownAttributes">
		<xsd:annotation>
			<xsd:documentation>

				Common attributes for controls with dropdowns (such as comboBox, gallery, or dropDown).

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="showItemImage"
									 type="xsd:boolean"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Whether item images are shown in the dropdown.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getItemCount"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for the number of items in the dropdown.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getItemLabel"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for an item's label.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getItemScreentip"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for an item's screentip.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getItemSupertip"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for an item's supertip.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getItemImage"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for an item's image.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="getItemID"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback for an item's ID.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="sizeString"
									 type="ST_String"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					A representative string that sets the control's width.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_GetContentAttributes">
		<xsd:annotation>
			<xsd:documentation>

				Attributes for dynamic controls that support the getContent callback.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="getContent"
									 type="ST_Delegate"
									 use="required">
			<xsd:annotation>
				<xsd:documentation>
					Callback that returns the dynamic content for this control.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:attributeGroup name="AG_DynamicContentAttributes">
		<xsd:annotation>
			<xsd:documentation>

				Attributes for controls that support dynamic content.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="invalidateContentOnDrop"
									 type="xsd:boolean"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Whether to fire callback for dynamic content each time the control is dropped.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:attributeGroup>

	<xsd:annotation>
		<xsd:documentation>
			----------------------------------------------------------------------
			Global settings
			----------------------------------------------------------------------
		</xsd:documentation>
	</xsd:annotation>

	<xsd:complexType name="CT_Command"
									 mixed="false">
		<xsd:annotation>
			<xsd:documentation>

				Attribute overrides for all controls with specified built-in ID.
				For example
				&lt;command idMso="Print" enabled="false"&gt;
				disables all instances of the Print button.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attributeGroup ref="AG_Action"/>
		<xsd:attributeGroup ref="AG_Enabled"/>
		<xsd:attributeGroup ref="AG_IDMso"/>
	</xsd:complexType>

	<xsd:annotation>
		<xsd:documentation>
			----------------------------------------------------------------------
			Controls
			----------------------------------------------------------------------
		</xsd:documentation>
	</xsd:annotation>

	<xsd:complexType name="CT_ControlBase">
		<xsd:annotation>
			<xsd:documentation>

				Base control type.
				Doesn't define ID attributes.
				Abstract type, not to be used directly.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attributeGroup ref="AG_ControlAttributes"/>
	</xsd:complexType>

	<xsd:complexType name="CT_Control">
		<xsd:annotation>
			<xsd:documentation>

				A type of control that can be used to
				enable, disable, or clone an existing control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_ControlBase">
				<xsd:attributeGroup ref="AG_IDAttributes"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_ControlCloneRegular">
		<xsd:annotation>
			<xsd:documentation>

				A clone of a built-in control.
				Only the most common attributes can be applied here; to set
				control-specific properties the actual control type must be specified.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="CT_Control">
				<xsd:attribute name="id"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Custom controls can't be cloned.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_ControlClone">
		<xsd:annotation>
			<xsd:documentation>

				A clone of built-in control that can be sized.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="CT_Button">
				<xsd:attribute name="id"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Custom controls can't be cloned.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="onAction"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							OnAction does not apply to 'control'.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_LabelControl">
		<xsd:annotation>
			<xsd:documentation>

				Shows text and/or icon but can't have any associated actions.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="CT_Control">
				<xsd:attribute name="image"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Image does not apply to labelControl.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="imageMso"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							ImageMso does not apply to labelControl.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getImage"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetImage does not apply to labelControl.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="keytip"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Keytip does not apply to labelControl.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getKeytip"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetKeyTip does not apply to labelControl.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="showImage"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							ShowImage does not apply to labelControl.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getShowImage"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetShowImage does not apply to labelControl.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_ButtonRegular">
		<xsd:annotation>
			<xsd:documentation>

				A fixed-size button.
				Size of this button is determined by its container such as a menu.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_Control">
				<xsd:attributeGroup ref="AG_Action"/>
				<xsd:attributeGroup ref="AG_Enabled"/>
				<xsd:attributeGroup ref="AG_Description"/>
				<xsd:attributeGroup ref="AG_Image"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_Button">
		<xsd:annotation>
			<xsd:documentation>

				A push-type button.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_ButtonRegular">
				<xsd:attributeGroup ref="AG_SizeAttributes"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_VisibleButton">
		<xsd:annotation>
			<xsd:documentation>

				A button which is always visible.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="CT_ButtonRegular">
				<xsd:attribute name="visible"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Visible does not apply to these buttons.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getVisible"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetVisible does not apply to these buttons.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_ToggleButtonRegular">
		<xsd:annotation>
			<xsd:documentation>

				A fixed-size button with an on/off state like the 'Bold' button.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_ButtonRegular">
				<xsd:attribute name="getPressed"
											 type="ST_Delegate"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Callback for whether the button is pressed.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_ToggleButton">
		<xsd:annotation>
			<xsd:documentation>

				A button with an on/off state that can be sized.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_ToggleButtonRegular">
				<xsd:attributeGroup ref="AG_SizeAttributes"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_VisibleToggleButton">
		<xsd:annotation>
			<xsd:documentation>

				A toggleButton which is always visible.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="CT_ToggleButtonRegular">
				<xsd:attribute name="visible"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Visible does not apply to these buttons.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getVisible"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetVisible does not apply to these buttons.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>


	<xsd:complexType name="CT_CheckBox">
		<xsd:annotation>
			<xsd:documentation>

				A check box.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="CT_ToggleButtonRegular">
				<xsd:attribute name="image"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Image does not apply to checkBox.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="imageMso"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							ImageMso does not apply to checkBox.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getImage"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetImage does not apply to checkBox.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="showImage"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							ShowImage does not apply to checkBox.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getShowImage"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetShowImage does not apply to checkBox.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="showLabel"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							ShowLabel does not apply to checkBox.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getShowLabel"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetShowLabel does not apply to checkBox.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>


	<xsd:complexType name="CT_EditBox">
		<xsd:annotation>
			<xsd:documentation>
				An editBox.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_Control">
				<xsd:attributeGroup ref="AG_Enabled"/>
				<xsd:attributeGroup ref="AG_Image"/>
				<xsd:attribute name="maxLength"
											 type="ST_StringLength"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							The maximum number of characters the user may enter.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getText"
											 type="ST_Delegate"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Callback for to populate text in the edit box before the user edits it.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="onChange"
											 type="ST_Delegate"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Callback that fires when the user changes the editBox content.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="sizeString"
											 type="ST_String"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							A representative string that sets the control's width.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>


	<xsd:complexType name="CT_Item">
		<xsd:annotation>
			<xsd:documentation>

				An item in a dropdown-type control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="id"
									 type="ST_UniqueID"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The ID of an item.  Items cannot use idMso or idQ.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="label"
									 type="ST_String"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					An item label.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="image"
									 type="ST_Uri"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					An item image.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="imageMso"
									 type="ST_ID"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					A built-in image.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="screentip"
									 type="ST_String"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The screentip.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="supertip"
									 type="ST_String"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The supertip.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>

	<xsd:complexType name="CT_ComboBox">
		<xsd:annotation>
			<xsd:documentation>

				A comboBox control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_EditBox">
				<xsd:sequence>
					<xsd:element name="item"
											 type="CT_Item"
											 minOccurs="0"
											 maxOccurs="1000">
						<xsd:annotation>
							<xsd:documentation>
								An item in a comboBox.
								When selected, the label of the item becomes text content of the comboBox.
							</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
				<xsd:attributeGroup ref="AG_DropDownAttributes"/>
				<xsd:attributeGroup ref="AG_DynamicContentAttributes"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>


	<xsd:complexType name="CT_DropDownRegular">
		<xsd:annotation>
			<xsd:documentation>

				A dropdown-type control with a fixed size.
				Contains items followed by buttons.
				OnAction reports the selected item.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_Control">
				<xsd:sequence>
					<xsd:element name="item"
											 type="CT_Item"
											 minOccurs="0"
											 maxOccurs="1000">
						<xsd:annotation>
							<xsd:documentation>
								An item in the dropdown.
							</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="button"
											 type="CT_ButtonRegular"
											 minOccurs="0"
											 maxOccurs="16">
						<xsd:annotation>
							<xsd:documentation>
								Button in footer of dropdown.
							</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
				<xsd:attributeGroup ref="AG_Action"/>
				<xsd:attributeGroup ref="AG_Enabled"/>
				<xsd:attributeGroup ref="AG_Image"/>
				<xsd:attributeGroup ref="AG_DropDownAttributes"/>
				<xsd:attribute name="getSelectedItemID"
											 type="ST_Delegate"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Callback that returns the ID of currently selected item.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getSelectedItemIndex"
											 type="ST_Delegate"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Callback that returns the index of currently selected item.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="showItemLabel"
											 type="xsd:boolean"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Whether the label is shown or hidden on dropdown items.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_GalleryRegular">
		<xsd:annotation>
			<xsd:documentation>

				A dropdown grid control that can be sized.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_DropDownRegular">
				<xsd:attributeGroup ref="AG_Description"/>
				<xsd:attributeGroup ref="AG_DynamicContentAttributes"/>
				<xsd:attribute name="columns"
											 type="ST_GalleryRowColumnCount"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Number of columns in dropdown gallery.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="rows"
											 type="ST_GalleryRowColumnCount"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Number of rows in dropdown gallery.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="itemWidth"
											 type="ST_GalleryItemWidthHeight"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Item width in pixels.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="itemHeight"
											 type="ST_GalleryItemWidthHeight"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Item height in pixels.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getItemWidth"
											 type="ST_Delegate"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Callback that returns the item width.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getItemHeight"
											 type="ST_Delegate"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Callback that returns the item height.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="showItemLabel"
											 type="xsd:boolean"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							Whether the label is shown or hidden on gallery items.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_Gallery">
		<xsd:annotation>
			<xsd:documentation>

				A gallery control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_GalleryRegular">
				<xsd:attributeGroup ref="AG_SizeAttributes"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:group name="EG_MenuControlsBase">
		<xsd:annotation>
			<xsd:documentation>
				A group of controls allowed in all menus.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:choice>
			<xsd:element name="control"
									 type="CT_ControlCloneRegular">
				<xsd:annotation>
					<xsd:documentation>
						Control can enable, disable, or clone built-in controls.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="button"
									 type="CT_ButtonRegular">
				<xsd:annotation>
					<xsd:documentation>
						Button control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="checkBox"
									 type="CT_CheckBox" >
				<xsd:annotation>
					<xsd:documentation>
						CheckBox control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="gallery"
									 type="CT_GalleryRegular">
				<xsd:annotation>
					<xsd:documentation>
						Gallery control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="toggleButton"
									 type="CT_ToggleButtonRegular">
				<xsd:annotation>
					<xsd:documentation>
						ToggleButton control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="menuSeparator"
									 type="CT_MenuSeparator">
				<xsd:annotation>
					<xsd:documentation>
						Control group separator.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:choice>
	</xsd:group>


	<xsd:group name="EG_MenuOrSplitButtonRegular">
		<xsd:annotation>
			<xsd:documentation>
				Defines menu or splitButton controls.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:choice>
			<xsd:element name="splitButton"
									 type="CT_SplitButtonRegular" >
				<xsd:annotation>
					<xsd:documentation>
						SplitButton control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="menu"
									 type="CT_MenuRegular">
				<xsd:annotation>
					<xsd:documentation>
						Menu.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="dynamicMenu"
									 type="CT_DynamicMenuRegular">
				<xsd:annotation>
					<xsd:documentation>
						DynamicMenu.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:choice>
	</xsd:group>


	<xsd:group name="EG_MenuOrSplitButtonWithTitle">
		<xsd:annotation>
			<xsd:documentation>
				Menu or split button controls with title.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:choice>
			<xsd:element name="splitButton"
									 type="CT_SplitButtonWithTitle" >
				<xsd:annotation>
					<xsd:documentation>
						SplitButton control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="menu"
									 type="CT_MenuWithTitle">
				<xsd:annotation>
					<xsd:documentation>
						Menu.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="dynamicMenu"
									 type="CT_DynamicMenuRegular">
				<xsd:annotation>
					<xsd:documentation>
						DynamicMenu.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:choice>
	</xsd:group>


	<xsd:complexType name="CT_OfficeMenu">
		<xsd:annotation>
			<xsd:documentation>

				The OfficeMenu control.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:choice minOccurs="0"
									maxOccurs="1000">
				<xsd:group ref="EG_MenuControlsBase"/>
				<xsd:group ref="EG_MenuOrSplitButtonWithTitle"/>
			</xsd:choice>
		</xsd:sequence>
	</xsd:complexType>


	<xsd:complexType name="CT_MenuRegular">
		<xsd:annotation>
			<xsd:documentation>

				A menu with a fixed-size button.
				Contains one or more controls or other menus.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_ControlBase">
				<xsd:sequence>
					<xsd:choice minOccurs="0"
											maxOccurs="1000">
						<xsd:group ref="EG_MenuControlsBase"/>
						<xsd:group ref="EG_MenuOrSplitButtonRegular"/>
					</xsd:choice>
				</xsd:sequence>
				<xsd:attribute name="itemSize"
											 type="ST_ItemSize"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							The size of menu items.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attributeGroup ref="AG_Description"/>
				<xsd:attributeGroup ref="AG_IDAttributes"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_DynamicMenuRegular">
		<xsd:annotation>
			<xsd:documentation>

				A dynamicMenu with a fixed-size button.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_ControlBase">
				<xsd:attributeGroup ref="AG_Description"/>
				<xsd:attributeGroup ref="AG_IDAttributes"/>
				<xsd:attributeGroup ref="AG_GetContentAttributes"/>
				<xsd:attributeGroup ref="AG_DynamicContentAttributes"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>


	<xsd:complexType name="CT_MenuWithTitle">
		<xsd:annotation>
			<xsd:documentation>

				A menu with a fixed-size button.
				Contains one or more controls or other menus and has a 'title' attribute.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_ControlBase">
				<xsd:sequence>
					<xsd:choice minOccurs="0"
											maxOccurs="1000">
						<xsd:group ref="EG_MenuControlsBase"/>
						<xsd:group ref="EG_MenuOrSplitButtonWithTitle"/>
					</xsd:choice>
				</xsd:sequence>
				<xsd:attributeGroup ref="AG_IDAttributes"/>
				<xsd:attribute name="itemSize"
											 type="ST_ItemSize"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							The size of menu items.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attributeGroup ref="AG_Title"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_Menu">
		<xsd:annotation>
			<xsd:documentation>

				A menu with a button that can be sized.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_MenuRegular">
				<xsd:attributeGroup ref="AG_SizeAttributes"/>
				<xsd:attribute name="itemSize"
											 type="ST_ItemSize"
											 use="optional">
					<xsd:annotation>
						<xsd:documentation>
							The size of menu items. Large menu items show the 'description' attribute inline.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_DynamicMenu">
		<xsd:annotation>
			<xsd:documentation>

				A dynamicMenu with a button that can be sized.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_DynamicMenuRegular">
				<xsd:attributeGroup ref="AG_SizeAttributes"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>


	<xsd:complexType name="CT_SplitButtonBase">
		<xsd:annotation>
			<xsd:documentation>

				A splitButton-type control with a fixed-size.
				SplitButton contains a button or toggleButton and a menu.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_Control">
				<xsd:attributeGroup ref="AG_Enabled"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_SplitButtonRestricted">
		<xsd:annotation>
			<xsd:documentation>

				Attributes that do not apply to splitButton.
				They are inherited from the button inside of the splitButton.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="CT_SplitButtonBase">
				<xsd:attribute name="label"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Label does not apply to splitButton, set it on the button inside the splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getLabel"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetLabel inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="screentip"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Screentip inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getScreentip"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetScreentip inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="supertip"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Supertip inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getSupertip"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetSuperTip inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="image"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							Image inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="imageMso"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							ImageMso inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getImage"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetImage inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="showImage"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							ShowImage inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="getShowImage"
											 use="prohibited">
					<xsd:annotation>
						<xsd:documentation>
							GetShowImage inherited from button inside splitButton.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_SplitButtonRegular">
		<xsd:annotation>
			<xsd:documentation>

				A splitButton with a fixed-size.
				SplitButton contains a button or toggleButton and a menu.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_SplitButtonRestricted">
				<xsd:sequence minOccurs="0">
					<xsd:choice minOccurs="0" >
						<xsd:element name="button"
												 type="CT_VisibleButton">
							<xsd:annotation>
								<xsd:documentation>
									Button.
								</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="toggleButton"
												 type="CT_VisibleToggleButton" >
							<xsd:annotation>
								<xsd:documentation>
									ToggleButton.
								</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:choice>
					<xsd:element name="menu"
											 type="CT_MenuRegular" >
						<xsd:annotation>
							<xsd:documentation>
								Menu.
							</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_SplitButtonWithTitle">
		<xsd:annotation>
			<xsd:documentation>

				A splitButton with a fixed-size, and title attribute.
				SplitButton contains a button or toggleButton and a menu.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_SplitButtonRestricted">
				<xsd:sequence minOccurs="0">
					<xsd:choice minOccurs="0" >
						<xsd:element name="button"
												 type="CT_VisibleButton">
							<xsd:annotation>
								<xsd:documentation>
									Button.
								</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="toggleButton"
												 type="CT_VisibleToggleButton" >
							<xsd:annotation>
								<xsd:documentation>
									ToggleButton.
								</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:choice>
					<xsd:element name="menu"
											 type="CT_MenuWithTitle" >
						<xsd:annotation>
							<xsd:documentation>
								Menu.
							</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="CT_SplitButton">
		<xsd:annotation>
			<xsd:documentation>

				A splitButton that can be sized.
				SplitButton contains a button or toggleButton and a menu.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="CT_SplitButtonRegular">
				<xsd:attributeGroup ref="AG_SizeAttributes"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>


	<xsd:group name="EG_Controls">
		<xsd:annotation>
			<xsd:documentation>
				Control types.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:choice>
			<xsd:element name="control"
									 type="CT_ControlClone">
				<xsd:annotation>
					<xsd:documentation>
						Control element can enable, disable or clone built-in controls.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="labelControl"
									 type="CT_LabelControl" >
				<xsd:annotation>
					<xsd:documentation>
						LabelControl.
						Shows text and/or image.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="button"
									 type="CT_Button" >
				<xsd:annotation>
					<xsd:documentation>
						Button control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="toggleButton"
									 type="CT_ToggleButton" >
				<xsd:annotation>
					<xsd:documentation>
						ToggleButton control, a button with on/off state.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="checkBox"
									 type="CT_CheckBox" >
				<xsd:annotation>
					<xsd:documentation>
						CheckBox control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="editBox"
									 type="CT_EditBox" >
				<xsd:annotation>
					<xsd:documentation>
						EditBox control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="comboBox"
									 type="CT_ComboBox" >
				<xsd:annotation>
					<xsd:documentation>
						ComboBox control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="dropDown"
									 type="CT_DropDownRegular" >
				<xsd:annotation>
					<xsd:documentation>
						DropDown control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="gallery"
									 type="CT_Gallery" >
				<xsd:annotation>
					<xsd:documentation>
						Gallery control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="menu"
									 type="CT_Menu" >
				<xsd:annotation>
					<xsd:documentation>
						Menu control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="dynamicMenu"
									 type="CT_DynamicMenu" >
				<xsd:annotation>
					<xsd:documentation>
						DynamicMenu control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="splitButton"
									 type="CT_SplitButton" >
				<xsd:annotation>
					<xsd:documentation>
						SplitButton control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="box"
									 type="CT_Box" >
				<xsd:annotation>
					<xsd:documentation>
						Box control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="buttonGroup"
									 type="CT_ButtonGroup" >
				<xsd:annotation>
					<xsd:documentation>
						ButtonGroup control.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:choice>
	</xsd:group>


	<xsd:annotation>
		<xsd:documentation>
			----------------------------------------------------------------------
			Containers
			----------------------------------------------------------------------
		</xsd:documentation>
	</xsd:annotation>

	<xsd:complexType name="CT_DialogLauncher">
		<xsd:annotation>
			<xsd:documentation>

				Opens a dialog related to its parent group.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="button"
									 type="CT_ButtonRegular"
									 minOccurs="1"
									 maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>
						Opens a dialog related to its parent group.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>


	<xsd:complexType name="CT_Box">
		<xsd:annotation>
			<xsd:documentation>

				A box control, useful for grouping controls horizontally and vertically.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:group ref="EG_Controls"
							 minOccurs="0"
							 maxOccurs="1000" />
		<xsd:attributeGroup ref="AG_IDCustom"/>
		<xsd:attributeGroup ref="AG_Visible"/>
		<xsd:attributeGroup ref="AG_PositionAttributes"/>
		<xsd:attribute name="boxStyle"
									 type="ST_BoxStyle"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Flow of controls inside the box.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>


	<xsd:complexType name="CT_Separator">
		<xsd:annotation>
			<xsd:documentation>

				An in-Ribbon separator. Renders as a vertical bar.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attributeGroup ref="AG_IDCustom"/>
		<xsd:attributeGroup ref="AG_Visible"/>
		<xsd:attributeGroup ref="AG_PositionAttributes"/>
	</xsd:complexType>

	<xsd:complexType name="CT_MenuSeparator">
		<xsd:annotation>
			<xsd:documentation>

				A menuSeparator. Renders as a horizontal bar.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:attributeGroup ref="AG_IDCustom"/>
		<xsd:attributeGroup ref="AG_PositionAttributes"/>
		<xsd:attributeGroup ref="AG_Title"/>
	</xsd:complexType>

	<xsd:complexType name="CT_ButtonGroup">
		<xsd:annotation>
			<xsd:documentation>

				A ButtonGroup. A horizontal box with special visual appearance.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:choice minOccurs="0"
									maxOccurs="1000">
				<xsd:element name="control"
										 type="CT_ControlCloneRegular">
					<xsd:annotation>
						<xsd:documentation>
							Control element can enable, disable or clone built-in controls.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="button"
										 type="CT_ButtonRegular" >
					<xsd:annotation>
						<xsd:documentation>
							Button.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="toggleButton"
										 type="CT_ToggleButtonRegular" >
					<xsd:annotation>
						<xsd:documentation>
							ToggleButton control, a button with on/off state.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="gallery"
										 type="CT_GalleryRegular">
					<xsd:annotation>
						<xsd:documentation>
							Gallery control.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="menu"
										 type="CT_MenuRegular">
					<xsd:annotation>
						<xsd:documentation>
							Menu control.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="dynamicMenu"
										 type="CT_DynamicMenuRegular">
					<xsd:annotation>
						<xsd:documentation>
							DynamicMenu control.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="splitButton"
										 type="CT_SplitButtonRegular">
					<xsd:annotation>
						<xsd:documentation>
							SplitButton control.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
			</xsd:choice>
		</xsd:sequence>
		<xsd:attributeGroup ref="AG_IDCustom"/>
		<xsd:attributeGroup ref="AG_Visible"/>
		<xsd:attributeGroup ref="AG_PositionAttributes"/>
	</xsd:complexType>


	<xsd:complexType name="CT_Group">
		<xsd:annotation>
			<xsd:documentation>

				A group.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:sequence>
				<xsd:choice minOccurs="0"
										maxOccurs="1000">
					<xsd:group ref="EG_Controls"/>
					<xsd:element name="separator"
											 type="CT_Separator">
						<xsd:annotation>
							<xsd:documentation>
								Separator control.
							</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:choice>
			</xsd:sequence>
			<xsd:element name="dialogBoxLauncher"
									 type="CT_DialogLauncher"
									 minOccurs="0"
									 maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>
						DialogBoxLauncher. Opens a dialog related to its parent group.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attributeGroup ref="AG_IDAttributes"/>
		<xsd:attributeGroup ref="AG_Label"/>
		<xsd:attributeGroup ref="AG_Image"/>
		<xsd:attributeGroup ref="AG_PositionAttributes"/>
		<xsd:attributeGroup ref="AG_Screentip"/>
		<xsd:attributeGroup ref="AG_Visible"/>
		<xsd:attributeGroup ref="AG_Keytip"/>
	</xsd:complexType>


	<xsd:complexType name="CT_Tab">
		<xsd:annotation>
			<xsd:documentation>

				A tab that contains groups.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:choice minOccurs="0"
									maxOccurs="100">
				<xsd:element name="group"
										 type="CT_Group">
					<xsd:annotation>
						<xsd:documentation>

							Group. Contains controls.

						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
			</xsd:choice>
		</xsd:sequence>
		<xsd:attributeGroup ref="AG_IDAttributes"/>
		<xsd:attributeGroup ref="AG_Label"/>
		<xsd:attributeGroup ref="AG_PositionAttributes"/>
		<xsd:attributeGroup ref="AG_Visible"/>
		<xsd:attributeGroup ref="AG_Keytip"/>
	</xsd:complexType>


	<xsd:complexType name="CT_QatItems">
		<xsd:annotation>
			<xsd:documentation>

				Quick Access Toolbar items (shared or document-specific).

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:choice minOccurs="0"
									maxOccurs="1000">
				<xsd:element name="control"
										 type="CT_ControlClone">
					<xsd:annotation>
						<xsd:documentation>
							Control element can enable, disable or clone built-in controls.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="button"
										 type="CT_ButtonRegular">
					<xsd:annotation>
						<xsd:documentation>
							Button control.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="separator"
										 type="CT_Separator">
					<xsd:annotation>
						<xsd:documentation>
							Control group separator.
						</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
			</xsd:choice>
		</xsd:sequence>
	</xsd:complexType>


	<xsd:complexType name="CT_Qat">
		<xsd:annotation>
			<xsd:documentation>

				The Quick Access Toolbar.
				Two control collections: 1) Shared - applied to all windows and documents and 2) Document - attached to a document.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="sharedControls"
									 type="CT_QatItems"
									 minOccurs="0" >
				<xsd:annotation>
					<xsd:documentation>
						Set of controls shared between all windows or instances of the application.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="documentControls"
									 type="CT_QatItems"
									 minOccurs="0" >
				<xsd:annotation>
					<xsd:documentation>
						Set of controls attached to the current document.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>


	<xsd:complexType name="CT_Tabs">
		<xsd:annotation>
			<xsd:documentation>

				A collection of tabs.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="tab"
									 type="CT_Tab"
									 minOccurs="1"
									 maxOccurs="100">
				<xsd:annotation>
					<xsd:documentation>
						Tab.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>


	<xsd:complexType name="CT_TabSet">
		<xsd:annotation>
			<xsd:documentation>

				A collection of contextual tab sets.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="tab"
									 type="CT_Tab"
									 minOccurs="0"
									 maxOccurs="50">
				<xsd:annotation>
					<xsd:documentation>
						A Contextual Tab.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="idMso"
									 type="ST_ID"
									 use="required">
			<xsd:annotation>
				<xsd:documentation>
					The ID of a built-in control.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attributeGroup ref="AG_Visible"/>
	</xsd:complexType>


	<xsd:complexType name="CT_ContextualTabs">
		<xsd:annotation>
			<xsd:documentation>

				A collection of contextual tab sets.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="tabSet"
									 type="CT_TabSet"
									 minOccurs="1"
									 maxOccurs="100">
				<xsd:annotation>
					<xsd:documentation>
						TabSet.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>


	<xsd:annotation>
		<xsd:documentation>
			----------------------------------------------------------------------
			Root elements
			----------------------------------------------------------------------
		</xsd:documentation>
	</xsd:annotation>

	<xsd:complexType name="CT_Commands">
		<xsd:annotation>
			<xsd:documentation>

				A collection of Command elements.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="command"
									 type="CT_Command"
									 minOccurs="1"
									 maxOccurs="5000">
				<xsd:annotation>
					<xsd:documentation>
						Attribute overrides for all controls with specified idMso.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="CT_Ribbon">
		<xsd:annotation>
			<xsd:documentation>

				The Ribbon which contains the tabs, contextualTabs, officeMenu, and qat control types.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:all>
			<xsd:element name="officeMenu"
									 type="CT_OfficeMenu"
									 minOccurs="0"
									 maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>
						OfficeMenu.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="qat"
									 type="CT_Qat"
									 minOccurs="0"
									 maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>
						The Quick Access Toolbar.
						Two control collections: 1) Shared - applied to all windows and documents and 2) Document - attached to a document.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="tabs"
									 type="CT_Tabs"
									 minOccurs="0"
									 maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>
						A collection of tabs.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="contextualTabs"
									 type="CT_ContextualTabs"
									 minOccurs="0"
									 maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>
						A collection of contextual tab sets.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:all>
		<xsd:attribute name="startFromScratch"
									 type="xsd:boolean"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Whether startFromScratch is enabled. It's a mode that hides almost all of the standard UI.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>

	<xsd:complexType name="CT_MenuRoot">
		<xsd:annotation>
			<xsd:documentation>

				The root element of the customization XML returned by the getContent callback on dynamicMenus.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:choice minOccurs="0"
									maxOccurs="1000">
				<xsd:group ref="EG_MenuControlsBase"/>
				<xsd:group ref="EG_MenuOrSplitButtonRegular"/>
			</xsd:choice>
		</xsd:sequence>
		<xsd:attributeGroup ref="AG_Title"/>
		<xsd:attribute name="itemSize"
									 type="ST_ItemSize"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					The size of menu items.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>

	<xsd:element name="menu"
							 type="CT_MenuRoot">
		<xsd:annotation>
			<xsd:documentation>

				The root element of the customization XML used in dynamicMenu's getContent callback.

			</xsd:documentation>
		</xsd:annotation>
	</xsd:element>

	<xsd:complexType name="CT_CustomUI">
		<xsd:annotation>
			<xsd:documentation>

				The root element of the customization file which is used to create or modify the Ribbon and other UI elements.

			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="commands"
									 type="CT_Commands"
									 minOccurs="0"
									 maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>
						Command overrides.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ribbon"
									 type="CT_Ribbon"
									 minOccurs="0"
									 maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>
						Ribbon.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="onLoad"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					Callback invoked when custom UI is loaded.
					IRibbonUI object is passed as a parameter. This object exposes Invalidate and InvalidateControl.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="loadImage"
									 type="ST_Delegate"
									 use="optional">
			<xsd:annotation>
				<xsd:documentation>
					A callback to load all images. If specified, all controls with the image attribute set will call this callback with the attribute value passed as a string.
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>

	<xsd:element name="customUI"
							 type="CT_CustomUI">
		<xsd:annotation>
			<xsd:documentation>

				The root element used to create or modify the Ribbon and other UI components.

			</xsd:documentation>
		</xsd:annotation>
	</xsd:element>

</xsd:schema>